$(function() {
	var titleDefOrNot = function(elm) {
		$(elm).focus(function() {
			if ($(this).val() == $.titleDef) $(this).val('');
		});
		$(elm).blur(function() {
			if ($(this).val() == '') $(this).val($.titleDef);
		});
	}
	var sumDefOrNot = function(elm) {
		$(elm).focus(function() {
			if ($(this).val() == $.sumDef) $(this).val('');
		});
		$(elm).blur(function() {
			if ($(this).val() == '') $(this).val($.sumDef);
		});
	}
	var tr = $('#inputs-wrapper tr:first').clone(true);
	tr.find('.title input').val($.titleDef);
	tr.find('.sum input').val($.sumDef);
	
	$.titleDef = $('#inputs-wrapper .title input').val();
	$.sumDef = $('#inputs-wrapper .sum input').val();
	
	titleDefOrNot($('#inputs-wrapper .title input'));
	sumDefOrNot($('#inputs-wrapper .sum input'));
	
	var removeRow = function() {
		$(this).parents('tr').remove();
		checkTotal();
	}
	var checkTotal = function() {
		var total = 0, totalGRN = 0;
		var currencyVal = $('#currency').val();
		var curVal = parseFloat(currencyVal);
		$('#inputs-wrapper .sum input').each(function() {
			var sumVal = parseFloat($(this).val().replace(/,/g, '.'));
			$(this).val($(this).val().replace(/,/g, '.'));
			if (sumVal > 0 && curVal > 0) {
				total += sumVal;
				totalGRN += sumVal * curVal;
			} else {
				total += 0;
				totalGRN += 0;
			}
		});
		var currencyVal = $('#currency').val().replace(/,/g, '.');
		$('#currency').val(currencyVal);
		totalGRN = Math.round(totalGRN * 100) / 100;
		$('span.total-sum').text(total);
		$('span.total-sum-grn').text(totalGRN);
	}
	var bindCheckTotal = function() {
		$('#inputs-wrapper td.sum input').bind('keyup', checkTotal);
		$('#inputs-wrapper td.sum input').bind('blur', checkTotal);
	}
	var checkSubmit = function() {
		var $this = $(this);
		var bool = true;
		var number = true;
		$('#inputs-wrapper .title input').each(function() {
			var thisVal = $(this).val();
			if (thisVal == $.titleDef) bool = false;
		});
		$('#inputs-wrapper .sum input').each(function() {
			var thisVal = $(this).val();
			$(this).val(thisVal.replace(/,/g, '.'));
			if (thisVal == $.sumDef) bool = false;
		});
		var currencyVal = $('#currency').val().replace(/,/g, '.');
		$('#currency').val(currencyVal);
		if (currencyVal == '') bool = false;
		if (!bool) {
			alert('Поля, отмеченные *, обязательны к заполнению.');
			return false;
		}
	}
	var addClick = function() {
		$('#inputs-wrapper tbody').append(tr);
		$('#inputs-wrapper tr').not(':first').find('.etc .del').show().bind('click', removeRow);
		titleDefOrNot('#inputs-wrapper .title input');
		sumDefOrNot('#inputs-wrapper .sum input');
		bindCheckTotal();
		tr = $('#inputs-wrapper tr:first').clone(true);
		tr.find('.title input').val($.titleDef);
		tr.find('.sum input').val($.sumDef);
	}
	
	$('#add-row').bind('click', addClick);
	bindCheckTotal();
	$('#currency').bind('keyup', checkTotal);
	$('#currency').bind('blur', checkTotal);
	$('#frm-bill').submit(checkSubmit);
	
});